Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## rdlc.rdl
Interface Declaration

All Superinterfaces:
  Expression

All Known Subinterfaces:
  ChannelModel, DynRoot, Map, Message, Platform, Unit

All Known Implementing Classes:
  ChannelModel_FIFOPipe, ChannelModel_Indirect, Class, Declaration_Indirect, Declaration_Named, DynRoot_Indirect, DynRoot_Standard, FileInclude, FileInclude, LibraryClass, LibraryFile, LibraryFile, LibraryModule, Map_Indirect, Map_Standard, Message_Event, Message_Indirect, Message_Simple, Message_Struct, Message_Union, Module, Namespace, Platform_Indirect, Platform_Standard, Unit_Indirect, Unit_Standard

    public interface Declaration

extends Expression

This interface encapsulates the properties of an RDL declaration: it extends the `Expression` interface, and adds support for naming. Just like an RDL declaration which represents an expression which has been given a name.

Version:
  $Revision: 1.10 $
Author:
  Greg Gibeling

Nested Class Summary

Nested classes/interfaces inherited from interface rdlc.rdl.Expression
`Expression.Phase`

Method Summary
`Declaration` | `getBase()` Get the base declaration, ie one which is not indirect.
`Identifier<Declaration>` | `getIdentifier()` Get the `Identifier` for this declaration.
`java.lang.String` | `getLambdaName()` Simple accessor.
`Declaration` | `getNamedBase()` Get the named declaration closest to the base declaration.
`Declaration` | `getType()` Get the declaration which defines the type of this one.
`void` | `setRawStaticID(RawStaticIdentifier _rawStaticID)` Set the raw static identifier which names this declaration.

Methods inherited from interface rdlc.rdl.Expression
`getRequirements, resolve, setNamespace, typeMatch`

Method Detail

### setRawStaticID

    void setRawStaticID(RawStaticIdentifier _rawStaticID)

  Set the raw static identifier which names this declaration. This is used because most declarations are broken into two pieces in the RDL grammar. The first piece includes the declaration parameters, and the second piece includes the name. Thus most declarations are created and told their name later.

  Parameters:
    `_rawStaticID` - The raw static identifier from the RDL file, which gives the name of this declaration.

### getIdentifier

    Identifier<Declaration> getIdentifier()

  Get the `Identifier` for this declaration. This is also the identifier to which the expression this declaration represents is bound.

  Returns:
    The static `Identifier` for this declaration.

### getBase

    Declaration getBase()

  Get the base declaration, ie one which is not indirect. This is useful for getting to the root of a list of indirect declarations to the one which actually specifies the properties of the given object.

  Returns:
    A root declaration: one which is not indirect.

### getNamedBase

    Declaration getNamedBase()

  Get the named declaration closest to the base declaration. This is useful when generating named types for eg. software languages, where all of the datatypes need to be named.

  Returns:
    The most basic named declaration under this one.
  See Also:
    `getBase()`

### getLambdaName

    java.lang.String getLambdaName()

  Simple accessor.

  Returns:
    A name for this type, which can be used for types which were unnamed in RDL.

### getType

    Declaration getType()

  Get the declaration which defines the type of this one. This will return the first named declaration under this one.

  Returns:
    The declaration which defines the type of this declaration.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD